package org.summer.lawyer.domain;

import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;

import java.util.Date;

/**
 * 订单信息对象 spu_order
 *
 * @author summer
 * @date 2024-06-22
 */
@Data
@TableName("spu_order")
public class SpuOrder  {


    /**
     * 订单ID
     */
    @TableId(value = "order_id", type = IdType.ASSIGN_ID)
    private Long orderId;



    /**
     * 订单编号
     */
    @TableField(value = "order_number")
    private String orderNumber;



    /**
     * 订单状态(PENDING=待处理，Paid=已付款，Processing=处理中，Completed=已完成，Cancelled=已取消，Refunded=已退款）
     */
    @TableField(value = "order_status")
    private String orderStatus;



    /**
     * 服务类型
     */
    @TableField(value = "service_type")
    private String serviceType;



    /**
     * 联系电话
     */
    @TableField(value = "contact_phone")
    private String contactPhone;



    /**
     * 下单用户ID
     */
    @TableField(value = "user_id")
    private Long userId;



    /**
     * 下单用户姓名
     */
    @TableField(value = "user_name")
    private String userName;



    /**
     * 下单时间
     */
    @TableField(value = "order_time")
    private Date orderTime;



    /**
     * 订单金额（单位分）
     */
    @TableField(value = "amount")
    private Long amount;



    /**
     * 支付方式 (Alipay支付宝，WeChatPay微信, CreditCard信用卡, DebitCard借记卡，BankTransfer银行转帐)
     */
    @TableField(value = "payment_method")
    private String paymentMethod;



    /**
     * 支付金额（单位分）
     */
    @TableField(value = "payment_amount")
    private Long paymentAmount;



    /**
     * 支付时间
     */
    @TableField(value = "payment_time")
    private Date paymentTime;



    /**
     * 完成时间
     */
    @TableField(value = "completion_time")
    private Date completionTime;



    /**
     * 交易ID
     */
    @TableField(value = "transaction_id")
    private String transactionId;



    /**
     * 评价状态(0待评价，已评价）
     */
    @TableField(value = "review")
    private String review;



    /**
     * 备注
     */
    @TableField(value = "order_remark")
    private String orderRemark;



    /**
     * 是否已经支付 (0 未支付，1已支付）
     */
    @TableField(value = "payed")
    private String payed;



    /**
     * 取消时间
     */
    @TableField(value = "cancellation_time")
    private Date cancellationTime;



    /**
     * 订单关闭原因1-超时未支付 2-买家取消
     */
    @TableField(value = "close_type")
    private String closeType;



    /**
     * 删除标志（0代表存在 1代表删除）
     */
    @TableLogic
    @TableField(value = "del_flag")
    private String delFlag;

    /**
     * 是否需要指派律师处理（0不需要，1需要）
     */
    @TableField(value = "dispatchable")
    private String dispatchable;

    /**
     * 接收文件邮箱
     */
    @TableField(value = "email")
    private String email;

    /**
     * 是否申请完成,0未申请，1已申请
     */
    @TableField(value = "processed_status")
    private String processedStatus;

    /**
     * 申请完成时间
     */
    @TableField(value = "processed_time")
    private Date processedTime;

}
